import tkinter as tk
from tkinter import ttk

root = tk.Tk()
root.geometry("300x200")
root.configure(bg="white")  # 设置窗口背景色

# 创建滚动条样式
style = ttk.Style()

# 设置基本样式
style.configure("Transparent.Vertical.TScrollbar",
                troughcolor="",          # 空字符串表示完全透明
                background="",           # 滑块默认透明
                bordercolor="",          # 边框透明
                arrowcolor="black",      # 箭头颜色
                gripcount=0,             # 移除滑块上的grip图案
                relief="flat",           # 无边框效果
                borderwidth=0,           # 无边框宽度
                width=16)                # 滚动条宽度

# 设置交互状态下的样式
style.map("Transparent.Vertical.TScrollbar",
          background=[("pressed", "#CCCCCC"),   # 按下时显示滑块
                     ("active", "#DDDDDD")],    # 悬停时显示滑块
          arrowcolor=[("pressed", "black"),
                     ("active", "black"),
                     ("!active", "black")])

# 创建带滚动条的文本框
text = tk.Text(root)
scrollbar = ttk.Scrollbar(root, orient="vertical",
                         command=text.yview,
                         style="Transparent.Vertical.TScrollbar")
text.configure(yscrollcommand=scrollbar.set)

# 填充一些文本
for i in range(50):
    text.insert("end", f"这是第 {i+1} 行文本\n")

text.pack(side="left", fill="both", expand=True)
scrollbar.pack(side="right", fill="y")

root.mainloop()
